<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="aiplatform_v1beta1.html">Vertex AI API</a> . <a href="aiplatform_v1beta1.projects.html">projects</a> . <a href="aiplatform_v1beta1.projects.locations.html">locations</a> . <a href="aiplatform_v1beta1.projects.locations.reasoningEngines.html">reasoningEngines</a> . <a href="aiplatform_v1beta1.projects.locations.reasoningEngines.memories.html">memories</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="aiplatform_v1beta1.projects.locations.reasoningEngines.memories.operations.html">operations()</a></code>
</p>
<p class="firstline">Returns the operations Resource.</p>

<p class="toc_element">
  <code><a href="aiplatform_v1beta1.projects.locations.reasoningEngines.memories.revisions.html">revisions()</a></code>
</p>
<p class="firstline">Returns the revisions Resource.</p>

<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Create a Memory.</p>
<p class="toc_element">
  <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
<p class="firstline">Delete a Memory.</p>
<p class="toc_element">
  <code><a href="#generate">generate(parent, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Generate memories.</p>
<p class="toc_element">
  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Get a Memory.</p>
<p class="toc_element">
  <code><a href="#list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
<p class="firstline">List Memories.</p>
<p class="toc_element">
  <code><a href="#list_next">list_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
  <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Update a Memory.</p>
<p class="toc_element">
  <code><a href="#retrieve">retrieve(parent, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Retrieve memories.</p>
<p class="toc_element">
  <code><a href="#rollback">rollback(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Rollback Memory to a specific revision.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="create">create(parent, body=None, x__xgafv=None)</code>
  <pre>Create a Memory.

Args:
  parent: string, Required. The resource name of the ReasoningEngine to create the Memory under. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}` (required)
  body: object, The request body.
    The object takes the form of:

{ # A memory.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp when this Memory was created.
  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the Memory.
  &quot;disableMemoryRevisions&quot;: True or False, # Optional. Input only. If true, no revision will be created for this request.
  &quot;displayName&quot;: &quot;A String&quot;, # Optional. Display name of the Memory.
  &quot;expireTime&quot;: &quot;A String&quot;, # Optional. Timestamp of when this resource is considered expired. This is *always* provided on output when `expiration` is set on input, regardless of whether `expire_time` or `ttl` was provided.
  &quot;fact&quot;: &quot;A String&quot;, # Required. Semantic knowledge extracted from the source content.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`
  &quot;revisionExpireTime&quot;: &quot;A String&quot;, # Optional. Input only. Timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted.
  &quot;revisionLabels&quot;: { # Optional. Input only. The labels to apply to the Memory Revision created as a result of this request.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;revisionTtl&quot;: &quot;A String&quot;, # Optional. Input only. The TTL for the revision. The expiration time is computed: now + TTL.
  &quot;scope&quot;: { # Required. Immutable. The scope of the Memory. Memories are isolated within their scope. The scope is defined when creating or generating memories. Scope values cannot contain the wildcard character &#x27;*&#x27;.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;topics&quot;: [ # Optional. The Topics of the Memory.
    { # A memory topic identifier. This will be used to label a Memory and to restrict which topics are eligible for generation or retrieval.
      &quot;customMemoryTopicLabel&quot;: &quot;A String&quot;, # Optional. The custom memory topic label.
      &quot;managedMemoryTopic&quot;: &quot;A String&quot;, # Optional. The managed memory topic.
    },
  ],
  &quot;ttl&quot;: &quot;A String&quot;, # Optional. Input only. The TTL for this resource. The expiration time is computed: now + TTL.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Timestamp when this Memory was most recently updated.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="delete">delete(name, x__xgafv=None)</code>
  <pre>Delete a Memory.

Args:
  name: string, Required. The resource name of the Memory to delete. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}` (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="generate">generate(parent, body=None, x__xgafv=None)</code>
  <pre>Generate memories.

Args:
  parent: string, Required. The resource name of the ReasoningEngine to generate memories for. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}` (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for MemoryBankService.GenerateMemories. Maximum size is 8 MB.
  &quot;directContentsSource&quot;: { # Defines a direct source of content from which to generate the memories. # Defines a direct source of content as the source content from which to generate memories.
    &quot;events&quot;: [ # Required. The source content (i.e. chat history) to generate memories from.
      { # A single piece of conversation from which to generate memories.
        &quot;content&quot;: { # The structured data content of a message. A Content message contains a `role` field, which indicates the producer of the content, and a `parts` field, which contains the multi-part data of the message. # Required. A single piece of content from which to generate memories.
          &quot;parts&quot;: [ # Required. A list of Part objects that make up a single message. Parts of a message can have different MIME types. A Content message must have at least one Part.
            { # A datatype containing media that is part of a multi-part Content message. A `Part` consists of data which has an associated datatype. A `Part` can only contain one of the accepted types in `Part.data`. For media types that are not text, `Part` must have a fixed IANA MIME type identifying the type and subtype of the media if `inline_data` or `file_data` field is filled with raw bytes.
              &quot;codeExecutionResult&quot;: { # Result of executing the [ExecutableCode]. Only generated when using the [CodeExecution] tool, and always follows a `part` containing the [ExecutableCode]. # Optional. The result of executing the ExecutableCode.
                &quot;outcome&quot;: &quot;A String&quot;, # Required. Outcome of the code execution.
                &quot;output&quot;: &quot;A String&quot;, # Optional. Contains stdout when code execution is successful, stderr or other description otherwise.
              },
              &quot;executableCode&quot;: { # Code generated by the model that is meant to be executed, and the result returned to the model. Generated when using the [CodeExecution] tool, in which the code will be automatically executed, and a corresponding [CodeExecutionResult] will also be generated. # Optional. Code generated by the model that is intended to be executed.
                &quot;code&quot;: &quot;A String&quot;, # Required. The code to be executed.
                &quot;language&quot;: &quot;A String&quot;, # Required. Programming language of the `code`.
              },
              &quot;fileData&quot;: { # URI-based data. A FileData message contains a URI pointing to data of a specific media type. It is used to represent images, audio, and video stored in Google Cloud Storage. # Optional. The URI-based data of the part. This can be used to include files from Google Cloud Storage.
                &quot;displayName&quot;: &quot;A String&quot;, # Optional. The display name of the file. Used to provide a label or filename to distinguish files. This field is only returned in `PromptMessage` for prompt management. It is used in the Gemini calls only when server side tools (`code_execution`, `google_search`, and `url_context`) are enabled.
                &quot;fileUri&quot;: &quot;A String&quot;, # Required. The URI of the file in Google Cloud Storage.
                &quot;mimeType&quot;: &quot;A String&quot;, # Required. The IANA standard MIME type of the source data.
              },
              &quot;functionCall&quot;: { # A predicted [FunctionCall] returned from the model that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing the parameters and their values. # Optional. A predicted function call returned from the model. This contains the name of the function to call and the arguments to pass to the function.
                &quot;args&quot;: { # Optional. The function parameters and values in JSON object format. See [FunctionDeclaration.parameters] for parameter details.
                  &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
                },
                &quot;id&quot;: &quot;A String&quot;, # Optional. The unique id of the function call. If populated, the client to execute the `function_call` and return the response with the matching `id`.
                &quot;name&quot;: &quot;A String&quot;, # Optional. The name of the function to call. Matches [FunctionDeclaration.name].
              },
              &quot;functionResponse&quot;: { # The result output from a [FunctionCall] that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a [FunctionCall] made based on model prediction. # Optional. The result of a function call. This is used to provide the model with the result of a function call that it predicted.
                &quot;id&quot;: &quot;A String&quot;, # Optional. The id of the function call this response is for. Populated by the client to match the corresponding function call `id`.
                &quot;name&quot;: &quot;A String&quot;, # Required. The name of the function to call. Matches [FunctionDeclaration.name] and [FunctionCall.name].
                &quot;parts&quot;: [ # Optional. Ordered `Parts` that constitute a function response. Parts may have different IANA MIME types.
                  { # A datatype containing media that is part of a `FunctionResponse` message. A `FunctionResponsePart` consists of data which has an associated datatype. A `FunctionResponsePart` can only contain one of the accepted types in `FunctionResponsePart.data`. A `FunctionResponsePart` must have a fixed IANA MIME type identifying the type and subtype of the media if the `inline_data` field is filled with raw bytes.
                    &quot;fileData&quot;: { # URI based data for function response. # URI based data.
                      &quot;displayName&quot;: &quot;A String&quot;, # Optional. Display name of the file data. Used to provide a label or filename to distinguish file datas. This field is only returned in PromptMessage for prompt management. It is currently used in the Gemini GenerateContent calls only when server side tools (code_execution, google_search, and url_context) are enabled.
                      &quot;fileUri&quot;: &quot;A String&quot;, # Required. URI.
                      &quot;mimeType&quot;: &quot;A String&quot;, # Required. The IANA standard MIME type of the source data.
                    },
                    &quot;inlineData&quot;: { # Raw media bytes for function response. Text should not be sent as raw bytes, use the &#x27;text&#x27; field. # Inline media bytes.
                      &quot;data&quot;: &quot;A String&quot;, # Required. Raw bytes.
                      &quot;displayName&quot;: &quot;A String&quot;, # Optional. Display name of the blob. Used to provide a label or filename to distinguish blobs. This field is only returned in PromptMessage for prompt management. It is currently used in the Gemini GenerateContent calls only when server side tools (code_execution, google_search, and url_context) are enabled.
                      &quot;mimeType&quot;: &quot;A String&quot;, # Required. The IANA standard MIME type of the source data.
                    },
                  },
                ],
                &quot;response&quot;: { # Required. The function response in JSON object format. Use &quot;output&quot; key to specify function output and &quot;error&quot; key to specify error details (if any). If &quot;output&quot; and &quot;error&quot; keys are not specified, then whole &quot;response&quot; is treated as function output.
                  &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
                },
              },
              &quot;inlineData&quot;: { # A content blob. A Blob contains data of a specific media type. It is used to represent images, audio, and video. # Optional. The inline data content of the part. This can be used to include images, audio, or video in a request.
                &quot;data&quot;: &quot;A String&quot;, # Required. The raw bytes of the data.
                &quot;displayName&quot;: &quot;A String&quot;, # Optional. The display name of the blob. Used to provide a label or filename to distinguish blobs. This field is only returned in `PromptMessage` for prompt management. It is used in the Gemini calls only when server-side tools (`code_execution`, `google_search`, and `url_context`) are enabled.
                &quot;mimeType&quot;: &quot;A String&quot;, # Required. The IANA standard MIME type of the source data.
              },
              &quot;text&quot;: &quot;A String&quot;, # Optional. The text content of the part.
              &quot;thought&quot;: True or False, # Optional. Indicates whether the `part` represents the model&#x27;s thought process or reasoning.
              &quot;thoughtSignature&quot;: &quot;A String&quot;, # Optional. An opaque signature for the thought so it can be reused in subsequent requests.
              &quot;videoMetadata&quot;: { # Provides metadata for a video, including the start and end offsets for clipping and the frame rate. # Optional. Video metadata. The metadata should only be specified while the video data is presented in inline_data or file_data.
                &quot;endOffset&quot;: &quot;A String&quot;, # Optional. The end offset of the video.
                &quot;fps&quot;: 3.14, # Optional. The frame rate of the video sent to the model. If not specified, the default value is 1.0. The valid range is (0.0, 24.0].
                &quot;startOffset&quot;: &quot;A String&quot;, # Optional. The start offset of the video.
              },
            },
          ],
          &quot;role&quot;: &quot;A String&quot;, # Optional. The producer of the content. Must be either &#x27;user&#x27; or &#x27;model&#x27;. If not set, the service will default to &#x27;user&#x27;.
        },
      },
    ],
  },
  &quot;directMemoriesSource&quot;: { # Defines a direct source of memories that should be uploaded to Memory Bank with consolidation. # Defines a direct source of memories that should be uploaded to Memory Bank. This is similar to `CreateMemory`, but it allows for consolidation between these new memories and existing memories for the same scope.
    &quot;directMemories&quot;: [ # Required. The direct memories to upload to Memory Bank. At most 5 direct memories are allowed per request.
      { # A direct memory to upload to Memory Bank.
        &quot;fact&quot;: &quot;A String&quot;, # Required. The fact to consolidate with existing memories.
        &quot;topics&quot;: [ # Optional. The topics that the consolidated memories should be associated with.
          { # A memory topic identifier. This will be used to label a Memory and to restrict which topics are eligible for generation or retrieval.
            &quot;customMemoryTopicLabel&quot;: &quot;A String&quot;, # Optional. The custom memory topic label.
            &quot;managedMemoryTopic&quot;: &quot;A String&quot;, # Optional. The managed memory topic.
          },
        ],
      },
    ],
  },
  &quot;disableConsolidation&quot;: True or False, # Optional. If true, generated memories will not be consolidated with existing memories; all generated memories will be added as new memories regardless of whether they are duplicates of or contradictory to existing memories. By default, memory consolidation is enabled.
  &quot;disableMemoryRevisions&quot;: True or False, # Optional. If true, no revisions will be created for this request.
  &quot;revisionExpireTime&quot;: &quot;A String&quot;, # Optional. Timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted.
  &quot;revisionLabels&quot;: { # Optional. Labels to be applied to the generated memory revisions. For example, you can use this to label a revision with its data source.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;revisionTtl&quot;: &quot;A String&quot;, # Optional. The TTL for the revision. The expiration time is computed: now + TTL.
  &quot;scope&quot;: { # Optional. The scope of the memories that should be generated. Memories will be consolidated across memories with the same scope. Must be provided unless the scope is defined in the source content. If `scope` is provided, it will override the scope defined in the source content. Scope values cannot contain the wildcard character &#x27;*&#x27;.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;vertexSessionSource&quot;: { # Defines an Agent Engine Session from which to generate the memories. If `scope` is not provided, the scope will be extracted from the Session (i.e. {&quot;user_id&quot;: sesison.user_id}). # Defines a Vertex Session as the source content from which to generate memories.
    &quot;endTime&quot;: &quot;A String&quot;, # Optional. End time (exclusive) of the time range. If not set, the end time is unbounded.
    &quot;session&quot;: &quot;A String&quot;, # Required. The resource name of the Session to generate memories for. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/sessions/{session}`
    &quot;startTime&quot;: &quot;A String&quot;, # Optional. Time range to define which session events should be used to generate memories. Start time (inclusive) of the time range. If not set, the start time is unbounded.
  },
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="get">get(name, x__xgafv=None)</code>
  <pre>Get a Memory.

Args:
  name: string, Required. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}` (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A memory.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp when this Memory was created.
  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the Memory.
  &quot;disableMemoryRevisions&quot;: True or False, # Optional. Input only. If true, no revision will be created for this request.
  &quot;displayName&quot;: &quot;A String&quot;, # Optional. Display name of the Memory.
  &quot;expireTime&quot;: &quot;A String&quot;, # Optional. Timestamp of when this resource is considered expired. This is *always* provided on output when `expiration` is set on input, regardless of whether `expire_time` or `ttl` was provided.
  &quot;fact&quot;: &quot;A String&quot;, # Required. Semantic knowledge extracted from the source content.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`
  &quot;revisionExpireTime&quot;: &quot;A String&quot;, # Optional. Input only. Timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted.
  &quot;revisionLabels&quot;: { # Optional. Input only. The labels to apply to the Memory Revision created as a result of this request.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;revisionTtl&quot;: &quot;A String&quot;, # Optional. Input only. The TTL for the revision. The expiration time is computed: now + TTL.
  &quot;scope&quot;: { # Required. Immutable. The scope of the Memory. Memories are isolated within their scope. The scope is defined when creating or generating memories. Scope values cannot contain the wildcard character &#x27;*&#x27;.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;topics&quot;: [ # Optional. The Topics of the Memory.
    { # A memory topic identifier. This will be used to label a Memory and to restrict which topics are eligible for generation or retrieval.
      &quot;customMemoryTopicLabel&quot;: &quot;A String&quot;, # Optional. The custom memory topic label.
      &quot;managedMemoryTopic&quot;: &quot;A String&quot;, # Optional. The managed memory topic.
    },
  ],
  &quot;ttl&quot;: &quot;A String&quot;, # Optional. Input only. The TTL for this resource. The expiration time is computed: now + TTL.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Timestamp when this Memory was most recently updated.
}</pre>
</div>

<div class="method">
    <code class="details" id="list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, x__xgafv=None)</code>
  <pre>List Memories.

Args:
  parent: string, Required. The resource name of the ReasoningEngine to list the Memories under. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}` (required)
  filter: string, Optional. The standard list filter. More detail in [AIP-160](https://google.aip.dev/160). Supported fields (equality match only): * `scope` (as a JSON string)
  orderBy: string, Optional. The standard list order by string. If not specified, the default order is `create_time desc`. If specified, the default sorting order of provided fields is ascending. More detail in [AIP-132](https://google.aip.dev/132). Supported fields: * `create_time` * `update_time`
  pageSize: integer, Optional. The standard list page size.
  pageToken: string, Optional. The standard list page token.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message for MemoryBankService.ListMemories.
  &quot;memories&quot;: [ # List of Memories in the requested page.
    { # A memory.
      &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp when this Memory was created.
      &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the Memory.
      &quot;disableMemoryRevisions&quot;: True or False, # Optional. Input only. If true, no revision will be created for this request.
      &quot;displayName&quot;: &quot;A String&quot;, # Optional. Display name of the Memory.
      &quot;expireTime&quot;: &quot;A String&quot;, # Optional. Timestamp of when this resource is considered expired. This is *always* provided on output when `expiration` is set on input, regardless of whether `expire_time` or `ttl` was provided.
      &quot;fact&quot;: &quot;A String&quot;, # Required. Semantic knowledge extracted from the source content.
      &quot;name&quot;: &quot;A String&quot;, # Identifier. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`
      &quot;revisionExpireTime&quot;: &quot;A String&quot;, # Optional. Input only. Timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted.
      &quot;revisionLabels&quot;: { # Optional. Input only. The labels to apply to the Memory Revision created as a result of this request.
        &quot;a_key&quot;: &quot;A String&quot;,
      },
      &quot;revisionTtl&quot;: &quot;A String&quot;, # Optional. Input only. The TTL for the revision. The expiration time is computed: now + TTL.
      &quot;scope&quot;: { # Required. Immutable. The scope of the Memory. Memories are isolated within their scope. The scope is defined when creating or generating memories. Scope values cannot contain the wildcard character &#x27;*&#x27;.
        &quot;a_key&quot;: &quot;A String&quot;,
      },
      &quot;topics&quot;: [ # Optional. The Topics of the Memory.
        { # A memory topic identifier. This will be used to label a Memory and to restrict which topics are eligible for generation or retrieval.
          &quot;customMemoryTopicLabel&quot;: &quot;A String&quot;, # Optional. The custom memory topic label.
          &quot;managedMemoryTopic&quot;: &quot;A String&quot;, # Optional. The managed memory topic.
        },
      ],
      &quot;ttl&quot;: &quot;A String&quot;, # Optional. Input only. The TTL for this resource. The expiration time is computed: now + TTL.
      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Timestamp when this Memory was most recently updated.
    },
  ],
  &quot;nextPageToken&quot;: &quot;A String&quot;, # A token to retrieve the next page of results. Pass to ListMemoriesRequest.page_token to obtain that page.
}</pre>
</div>

<div class="method">
    <code class="details" id="list_next">list_next()</code>
  <pre>Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call &#x27;execute()&#x27; on to request the next
          page. Returns None if there are no more items in the collection.
        </pre>
</div>

<div class="method">
    <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
  <pre>Update a Memory.

Args:
  name: string, Identifier. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}` (required)
  body: object, The request body.
    The object takes the form of:

{ # A memory.
  &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp when this Memory was created.
  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the Memory.
  &quot;disableMemoryRevisions&quot;: True or False, # Optional. Input only. If true, no revision will be created for this request.
  &quot;displayName&quot;: &quot;A String&quot;, # Optional. Display name of the Memory.
  &quot;expireTime&quot;: &quot;A String&quot;, # Optional. Timestamp of when this resource is considered expired. This is *always* provided on output when `expiration` is set on input, regardless of whether `expire_time` or `ttl` was provided.
  &quot;fact&quot;: &quot;A String&quot;, # Required. Semantic knowledge extracted from the source content.
  &quot;name&quot;: &quot;A String&quot;, # Identifier. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`
  &quot;revisionExpireTime&quot;: &quot;A String&quot;, # Optional. Input only. Timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted.
  &quot;revisionLabels&quot;: { # Optional. Input only. The labels to apply to the Memory Revision created as a result of this request.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;revisionTtl&quot;: &quot;A String&quot;, # Optional. Input only. The TTL for the revision. The expiration time is computed: now + TTL.
  &quot;scope&quot;: { # Required. Immutable. The scope of the Memory. Memories are isolated within their scope. The scope is defined when creating or generating memories. Scope values cannot contain the wildcard character &#x27;*&#x27;.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;topics&quot;: [ # Optional. The Topics of the Memory.
    { # A memory topic identifier. This will be used to label a Memory and to restrict which topics are eligible for generation or retrieval.
      &quot;customMemoryTopicLabel&quot;: &quot;A String&quot;, # Optional. The custom memory topic label.
      &quot;managedMemoryTopic&quot;: &quot;A String&quot;, # Optional. The managed memory topic.
    },
  ],
  &quot;ttl&quot;: &quot;A String&quot;, # Optional. Input only. The TTL for this resource. The expiration time is computed: now + TTL.
  &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Timestamp when this Memory was most recently updated.
}

  updateMask: string, Optional. Mask specifying which fields to update. Supported fields: * `display_name` * `description` * `fact`
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="retrieve">retrieve(parent, body=None, x__xgafv=None)</code>
  <pre>Retrieve memories.

Args:
  parent: string, Required. The resource name of the ReasoningEngine to retrieve memories from. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}` (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for MemoryBankService.RetrieveMemories.
  &quot;filter&quot;: &quot;A String&quot;, # Optional. The standard list filter that will be applied to the retrieved memories. More detail in [AIP-160](https://google.aip.dev/160). Supported fields: * `fact` * `create_time` * `update_time`
  &quot;scope&quot;: { # Required. The scope of the memories to retrieve. A memory must have exactly the same scope (`Memory.scope`) as the scope provided here to be retrieved (same keys and values). Order does not matter, but it is case-sensitive.
    &quot;a_key&quot;: &quot;A String&quot;,
  },
  &quot;similaritySearchParams&quot;: { # Parameters for semantic similarity search based retrieval. # Parameters for semantic similarity search based retrieval.
    &quot;searchQuery&quot;: &quot;A String&quot;, # Required. Query to use for similarity search retrieval. If provided, then the parent ReasoningEngine must have ReasoningEngineContextSpec.MemoryBankConfig.SimilaritySearchConfig set.
    &quot;topK&quot;: 42, # Optional. The maximum number of memories to return. The service may return fewer than this value. If unspecified, at most 3 memories will be returned. The maximum value is 100; values above 100 will be coerced to 100.
  },
  &quot;simpleRetrievalParams&quot;: { # Parameters for simple (non-similarity search) retrieval. # Parameters for simple (non-similarity search) retrieval.
    &quot;pageSize&quot;: 42, # Optional. The maximum number of memories to return. The service may return fewer than this value. If unspecified, at most 3 memories will be returned. The maximum value is 100; values above 100 will be coerced to 100.
    &quot;pageToken&quot;: &quot;A String&quot;, # Optional. A page token, received from a previous `RetrieveMemories` call. Provide this to retrieve the subsequent page.
  },
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message for MemoryBankService.RetrieveMemories.
  &quot;nextPageToken&quot;: &quot;A String&quot;, # A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. This token is not set if similarity search was used for retrieval.
  &quot;retrievedMemories&quot;: [ # The retrieved memories.
    { # A retrieved memory.
      &quot;distance&quot;: 3.14, # The distance between the query and the retrieved Memory. Smaller values indicate more similar memories. This is only set if similarity search was used for retrieval.
      &quot;memory&quot;: { # A memory. # The retrieved Memory.
        &quot;createTime&quot;: &quot;A String&quot;, # Output only. Timestamp when this Memory was created.
        &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the Memory.
        &quot;disableMemoryRevisions&quot;: True or False, # Optional. Input only. If true, no revision will be created for this request.
        &quot;displayName&quot;: &quot;A String&quot;, # Optional. Display name of the Memory.
        &quot;expireTime&quot;: &quot;A String&quot;, # Optional. Timestamp of when this resource is considered expired. This is *always* provided on output when `expiration` is set on input, regardless of whether `expire_time` or `ttl` was provided.
        &quot;fact&quot;: &quot;A String&quot;, # Required. Semantic knowledge extracted from the source content.
        &quot;name&quot;: &quot;A String&quot;, # Identifier. The resource name of the Memory. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}`
        &quot;revisionExpireTime&quot;: &quot;A String&quot;, # Optional. Input only. Timestamp of when the revision is considered expired. If not set, the memory revision will be kept until manually deleted.
        &quot;revisionLabels&quot;: { # Optional. Input only. The labels to apply to the Memory Revision created as a result of this request.
          &quot;a_key&quot;: &quot;A String&quot;,
        },
        &quot;revisionTtl&quot;: &quot;A String&quot;, # Optional. Input only. The TTL for the revision. The expiration time is computed: now + TTL.
        &quot;scope&quot;: { # Required. Immutable. The scope of the Memory. Memories are isolated within their scope. The scope is defined when creating or generating memories. Scope values cannot contain the wildcard character &#x27;*&#x27;.
          &quot;a_key&quot;: &quot;A String&quot;,
        },
        &quot;topics&quot;: [ # Optional. The Topics of the Memory.
          { # A memory topic identifier. This will be used to label a Memory and to restrict which topics are eligible for generation or retrieval.
            &quot;customMemoryTopicLabel&quot;: &quot;A String&quot;, # Optional. The custom memory topic label.
            &quot;managedMemoryTopic&quot;: &quot;A String&quot;, # Optional. The managed memory topic.
          },
        ],
        &quot;ttl&quot;: &quot;A String&quot;, # Optional. Input only. The TTL for this resource. The expiration time is computed: now + TTL.
        &quot;updateTime&quot;: &quot;A String&quot;, # Output only. Timestamp when this Memory was most recently updated.
      },
    },
  ],
}</pre>
</div>

<div class="method">
    <code class="details" id="rollback">rollback(name, body=None, x__xgafv=None)</code>
  <pre>Rollback Memory to a specific revision.

Args:
  name: string, Required. The resource name of the Memory to rollback. Format: `projects/{project}/locations/{location}/reasoningEngines/{reasoning_engine}/memories/{memory}` (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for MemoryBankService.RollbackMemory.
  &quot;targetRevisionId&quot;: &quot;A String&quot;, # Required. The ID of the revision to rollback to.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
      },
    ],
    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  &quot;response&quot;: { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
  },
}</pre>
</div>

</body></html>